package com.github.wui.XLoading;

import android.app.Dialog;
import android.content.Context;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.view.View;

import androidx.annotation.NonNull;

/**
 * 自定义加载组件
 *
 * @author <a href="https://github.com/karai-oss">Mr.xie</a>
 * @Date 2025/2/23
 */
public class XLoading extends Dialog {


    public XLoading(@NonNull Context context) {
        super(context);
        // 设置dialg背景透明
        getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
    }


    /**
     * 自定义给定加载布局
     *
     * @param view 加载视图
     */
    public XLoading asLoading(View view) {
        this.setContentView(view);
        return this;
    }


    /**
     * 禁止外部点击
     */
    public XLoading showCancelOutLine() {
        setCanceledOnTouchOutside(false);
        super.show();
        return this;
    }


    /**
     * 默认的 loading
     *
     * @param context 对应UI上下文对象
     */
    public XLoading defaultLoading(Context context) {
        asLoading(new DefualtLoadingView(context));
        return this;
    }


}
